﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using HtmlAgilityPack;
using System.Net;
using System.IO;

namespace simpleGUI_QLQTPM
{
	public partial class GetLocation : Form
	{
		public GetLocation()
		{
			InitializeComponent();
		}

		private string _kinhDo = "";

		public string KinhDo
		{
			get { return _kinhDo; }
			set { _kinhDo = value; }
		}
		private string _viDo = "";

		public string ViDo
		{
			get { return _viDo; }
			set { _viDo = value; }
		}

		private string _tenDuLieu = "";

		public string TenDuLieu
		{
			get { return _tenDuLieu; }
			set { _tenDuLieu = value; }
		}


		private void Form1_Load(object sender, EventArgs e)
		{
			lblTenDichVu.Text = TenDuLieu;
			double lattitude = 10.76272;
			double longtitude = 106.6825;

			/*HtmlWeb hw = new HtmlWeb();
			string url = @"http://www.ip2location.com/";

			HtmlAgilityPack.HtmlDocument doc = null;
			try
			{
				doc = hw.Load(url);
			}
			catch (System.Exception ex)
			{
				MessageBox.Show("Không thể lây dữ liệu từ ip2location");
			}
			
			//txtContent.Text = System.Net.WebUtility.HtmlDecode(doc.DocumentNode.SelectSingleNode("//td[@class='post_title']").InnerText).Trim();
			try
			{
				string s = "";
				HtmlNodeCollection nc = doc.DocumentNode.SelectNodes("//label[@for='chkLatLng']");
				HtmlNode item = nc[1];
				{
					string content = item.InnerText;
					char[] separator = new char[1];
					separator[0] = ',';
					string[] splitedString = content.Split(separator);

					lattitude = double.Parse(splitedString[0]);
					longtitude = double.Parse(splitedString[1]);
				}
			}
			catch (System.Exception ex)
			{
				MessageBox.Show("Giao diện của ip2location thay đổi");
			}		
			*/
			try
			{
				// Do có 1 số địa điểm lộn kinh độ và vĩ độ nên dùng tạm hàm này để đổi những tọa độ bị lộn
				if (double.Parse(ViDo) > 106 && double.Parse(KinhDo) < 105)
				{
					double tam = double.Parse(ViDo);
					ViDo = KinhDo;
					KinhDo = tam.ToString();
				}

				//string uri = string.Format("http://maps.googleapis.com/maps/api/staticmap?center={0},{1}&zoom=15&size=233x258&sensor=false&markers=color:blue%7Clabel:A%7C{0},{1}", lattitude, longtitude);

				string uri = string.Format("http://maps.googleapis.com/maps/api/staticmap?center={0},{1}&zoom=11&size=512x512&maptype=roadmap&markers=color:blue%7Clabel:S%7C{0},{1}&markers=color:green%7Clabel:Y%7C{2},{3}&sensor=false", ViDo, KinhDo, lattitude, longtitude);

				WebRequest req = WebRequest.Create(uri);
				//req.Timeout = 5000;
				WebResponse response = req.GetResponse();
				StreamReader reader = new StreamReader(response.GetResponseStream());
				Image a = Image.FromStream(response.GetResponseStream());

			
				picMapOnline.Image = a;
			//	this.wbMap.Navigate(uri);

		
			}
			catch (System.Exception ex)
			{
				picMapOnline.Image = Properties.Resources.Error;
			}
			
			
		}
	}
}
